package com.gavin.utils;

import com.gavin.model.Model;

/**
 * ------------------------------
 * result
 * ------------------------------
 * @author wdm  @date 2017年12月28日
 * @version 1.0
 */
@SuppressWarnings("unchecked")
public class ResultUtils {

	/**
	 * 带泛型的分页
	 * @param result
	 * @return
	 */
	public static <M> M doPage(Model result) {
		return (M) Injector.injectPage(result.getClass(), result, true);
	}
	
	/**
	 * 带泛型的分页
	 * @param result
	 * @return
	 */
	public static <M> M doPage(Class<?> clazz,Model result) {
		return (M) Injector.injectPage(clazz, result, true);
	}
	
	public static <M> M inject(Class<?> clazz,Model result) {
		return (M) Injector.injectBean(clazz, result, true);
	}
	
//	public static Pages page(Model result) {
//		return Injector.page(result, true);
//	}
	
	/**
	 * 分页转json
	 * @param result
	 * @return
	 */
//	public static String page2Json(Model result) {
//		return Injector.page(result, true).toJson();
//	}
	
	public static <M> M doList(Model result) {
		return (M) Injector.injectList(result.getClass(), result, true);
	}
	
}
